Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

АК_lab4

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра електронні обчислювальні машини

Інформація про роботу

Рік:
2013
Тип роботи:
Лабораторна робота
Предмет:
Архітектура комп’ютерів та комп’ютерних систем

Частина тексту файла

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра «Електронні обчислювальні машини» Лабораторна робота №4 “Робота з симулятором машини Ноймана. Дослідження виконання асемблерної програми симулятора” з дисципліни: “Архітектура комп’ютерів” Львів – 2013 Мета: опанувати роботу асемблера на симуляторі машини Ноймана, зрозуміти і дослідити принцип виконання програми машиною Ноймана. Завдання: Розширити архітектуру систему команд симулятора машини Ноймана, скласти програму на асемблері з розшириним набором команд, перетворити її у машинні коди, запустити симулятор, увести до нього коди машинних, проаналізувати і пояснити отримані результати, довести коректність роботи розширеного набору команд, скласти звіт з виконання лабораторних досліджень та захистити його. 12 Зсув циклічний вліво  Вмістиме файлу pr2.as: lw 0 1 one lw 0 2 two lw 0 3 eight str noop 2 1 2 beq 3 2 end beq 0 0 str end sw 0 2 res halt two .fill 4 one .fill 1 eight .fill 1 res .fill 0 Вмістиме файлу pr2.nc: 8454153 8519688 8585226 30474242 18481153 16842749 12713995 25165824 4 1 1 0 Вмістиме файлу rep.txt: @@@ state: pc 8 memory: mem[ 0 ] 8454153 mem[ 1 ] 8519688 mem[ 2 ] 8585226 mem[ 3 ] 30474242 mem[ 4 ] 18481153 mem[ 5 ] 16842749 mem[ 6 ] 12713995 mem[ 7 ] 25165824 mem[ 8 ] 4 mem[ 9 ] 1 mem[ 10 ] 1 mem[ 11 ] 1 registers: reg[ 0 ] 0 reg[ 1 ] 1 reg[ 2 ] 1 reg[ 3 ] 1 reg[ 4 ] 0 reg[ 5 ] 0 reg[ 6 ] 0 reg[ 7 ] 0 end state Файл Старий код Новий код  ssol.c #define NOOP 7 #define ROL 7   else if (opcode == NOOP) { } else if (opcode == ROL) { int x = state.reg[arg0]; int n = state.reg[arg1]; __asm{ mov cl, byte ptr n rol x, cl} state.reg[arg2] = x; }  asol.c #define NOOP 7 #define ROL 7   if (strcmp(opcode, "add") && strcmp(opcode, "nand") && strcmp(opcode, "lw") && strcmp(opcode, "sw") && strcmp(opcode, "beq") && strcmp(opcode, "jalr") && strcmp(opcode, "halt") && strcmp(opcode, "noop") && strcmp(opcode, ".fill")) { printf("error: unrecognized opcode %s at address %d\n", opcode, address); exit(1); } if (strcmp(opcode, "add") && strcmp(opcode, "nand") && strcmp(opcode, "lw") && strcmp(opcode, "sw") && strcmp(opcode, "beq") && strcmp(opcode, "jalr") && strcmp(opcode, "halt") && strcmp(opcode, "rol") && strcmp(opcode, ".fill")) { printf("error: unrecognized opcode %s at address %d\n", opcode, address); exit(1); }   if (!strcmp(opcode, "add") || !strcmp(opcode, "nand") || !strcmp(opcode, "lw") || !strcmp(opcode, "sw") || !strcmp(opcode, "beq") || !strcmp(opcode, "jalr")) { testRegArg(arg0); testRegArg(arg1); } if (!strcmp(opcode, "add") || !strcmp(opcode, "nand")) { testRegArg(arg2); } if (!strcmp(opcode, "add") || !strcmp(opcode, "nand") || !strcmp(opcode, "ror") || !strcmp(opcode, "lw") || !strcmp(opcode, "sw") || !strcmp(opcode, "beq") || !strcmp(opcode, "jalr")) { testRegArg(arg0); testRegArg(arg1); } if (!strcmp(opcode, "add") || !strcmp(opcode, "nand") || !strcmp(opcode, "rol")) { testRegArg(arg2); }   num = ( NOOP << 22 ); num = (ROL << 22) | (atoi(arg0) << 19) | (atoi(arg1) << 16)| atoi(arg2);       Висновок: я опанував роботу асемблера на симуляторі машини Ноймана, зрозумів і дослідив принцип виконання програми машиною Ноймана.
Антиботан аватар за замовчуванням

30.12.2013 17:12

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини